<?php

namespace App\Utils;

class Build
{
    /**
     * 生成唯一的支付订单号
     * 格式示例：20250510120345987654123
     * @param string $prefix 可选的前缀，如 'HF' 表示“话费”
     * @return string
     */
    public static function order_number($prefix = '')
    {
        $time = microtime(true); // 带微秒的时间戳
        $micro = sprintf("%06d", ($time - floor($time)) * 1000000); // 微秒部分
        $date = date('YmdHis'); // 当前时间
        $rand = mt_rand(100, 999); // 三位随机数防止并发冲突
        $orderId = $prefix . $date . $micro . $rand;

        return $orderId;
    }
}
